package com.sskj.gocoin.v.activity;

import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.text.TextUtils;
import android.util.Log;
import android.view.KeyEvent;
import android.view.ViewGroup;
import android.webkit.WebChromeClient;
import android.webkit.WebResourceRequest;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.LinearLayout;

import com.just.agentweb.AgentWeb;
import com.sskj.gocoin.R;
import com.sskj.gocoin.R2;
import com.sskj.gocoin.common.widget.ToolBarLayout;

import butterknife.BindView;
import butterknife.ButterKnife;

public class BannerWebActivity extends AppCompatActivity {

    @BindView(R2.id.banner_web)
    WebView bannerWeb;
    @BindView(R2.id.asset_toolbar)
    ToolBarLayout assetToolbar;
    @BindView(R2.id.llWeb)
    LinearLayout llWeb;

    private AgentWeb mAgentWeb;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_banner_web);
        ButterKnife.bind(this);
        assetToolbar.setLeftButtonOnClickLinster(v -> finish());
        String url = getIntent().getStringExtra("url");
        String title = getIntent().getStringExtra("title");
        if (!TextUtils.isEmpty(url)) {
            if (url.contains("http")) {
                initView(url);
            } else {
                initView("http://" + url);
            }
        }
        if (!TextUtils.isEmpty(title)) {
            assetToolbar.setTitle(title);
        }
    }

    public static void start(Context context, String url, String title) {
        Intent intent = new Intent(context, BannerWebActivity.class);
        intent.putExtra("url", url);
        intent.putExtra("title", title);
        context.startActivity(intent);
    }


    public void initView(String url) {
        ((ViewGroup) (bannerWeb.getParent())).removeView(bannerWeb);
        WebSettings webSettings = bannerWeb.getSettings();
        webSettings.setDefaultTextEncodingName("UTF-8");//设置默认为utf-8

        mAgentWeb = AgentWeb.with(this)//这里需要把 Activity 、 和 Fragment  同时传入
                .setAgentWebParent(llWeb, new LinearLayout.LayoutParams(-1, -1))
//                .useDefaultIndicator(Color.TRANSPARENT)// 使用默认进度条
                .useDefaultIndicator()// 使用默认进度条
                .setWebView(bannerWeb)
                .setSecurityType(AgentWeb.SecurityType.STRICT_CHECK) //注意这里开启 strict 模式 ， 设备低于 4.2 情况下回把注入的 Js 全部清空掉 ， 这里推荐使用 onJsPrompt 通信
                .createAgentWeb()
                .ready()
                .go(url);
        mAgentWeb.getAgentWebSettings().getWebSettings().setUseWideViewPort(true);
        mAgentWeb.getAgentWebSettings().getWebSettings().setLoadWithOverviewMode(true);
    }


    /**
     * 返回键返回上一网页
     */
    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        //多加一个判断 如果当前url和intent传进来的url是相等的 取反->走closeActivity()
        if (keyCode == KeyEvent.KEYCODE_BACK && bannerWeb.canGoBack()) {
            bannerWeb.goBack();
            return true;
        } else {
            finish();
        }
        return super.onKeyDown(keyCode, event);
    }


}

